Distributed file system offer many compelling advantages in establishing high performance storage environments. One example is the ability for the distributed file system to offer storage to clients using multiple different protocols. For example, in a distributed file system consisting of a cluster of nodes, individual nodes can respond to multiple clients concurrently, and those clients can be communicating with the node using protocols such as Network File System (“NFS”), Server Message Block (“SMB”), Hadoop Distributed File System (“HDFS”), etc. One advantage of some distributed file systems is the ability of a client to connect to any node of the file system and have that node able to respond to file system operations. Thus, if a single node or less than a quorum of nodes suffers a failure, the client can, in general, transparently connect to a remaining active node to continue desired file system operations.
Some distributed file systems can also regularly sync with a backup cluster of nodes. The backup cluster of nodes can operate as an independent file system to the primary cluster of nodes. Data can be cloned on the backup cluster of nodes and periodically updated to include changes made on the primary cluster of nodes. In some file systems, the backup cluster of nodes can also serve as a failover cluster. The failover cluster can be used when the primary source of nodes suffers a cluster failure, or conceivably any adverse performance conditions, making it desirable to migrate clients from the primary cluster of nodes to the backup cluster of nodes, for immediate use by a set of existing clients. One challenge is that when a source cluster of nodes becomes inaccessible, and clients are failed over to a target cluster of nodes, clients can suffer from instability in that the target cluster may be unable to recognize protocol operations made by a client that still expects to be connected to the source cluster of nodes. For example, in an NFS environment, clients can be forced to unmount the source cluster and remount the target cluster upon the failover, which may or may not be transparent to the client. This can also cause delays to the client experience during the migration. Therefore there exists a need to provide a means to failover clients using an NFS protocol to a target cluster of nodes transparently that doesn't require an unmount and a remount.